Skip to content

Conversation

@kimssirr
Copy link
Contributor

@kimssirr kimssirr commented Sep 18, 2025

📌 연관 이슈

🌱 PR 요약

사용자가 같은 장소에 좋아요와 저장을 동시에 요청할 때 발생하는 트랜잭션 롤백 오류를 해결했습니다. 유저별 동기화와 즉시 DB 반영을 통해 동시성 문제를 근본적으로 해결하였습니다.

🛠 작업 내용

  • 동시성 문제 해결: synchronized (userId.toString().intern())를 사용하여 같은 사용자의 좋아요/저장 요청을 순차 처리하도록 개선
  • 즉시 DB 반영: flush() 메서드 추가로 트랜잭션 내에서 변경사항을 즉시 데이터베이스에 반영
  • 코드 리팩토링: setActionByContentId 메서드를 performUserPlaceAction으로 분리하여 가독성 향상
  • 예외 처리 개선: DataIntegrityViolationException 발생 시 로깅 추가 및 정상 처리 로직 구현
  • 스키마 예시 수정: PlaceActionRequestDto의 지역명 예시를 "서울"에서 "강릉시"로 변경

📸 상세 이미지

image image

@kimssirr kimssirr self-assigned this Sep 18, 2025
@kimssirr kimssirr merged commit 014a3ed into dev Sep 18, 2025
1 check passed
@lilloo04 lilloo04 deleted the fix/#91 branch December 10, 2025 14:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix: 좋아요 저장 동시 트랜잭션 문제

2 participants